2024 Austrian Grand Prix¶
Hallo Manager and welcome to the Fantasy League report for the 2024 Austrian Grand Prix. The Austrian Grand Prix has been a staple of Formula 1 for many generations, with the sounds of V12s, V10s, V8s, and the modern V6 turbo hybrids gracing the Styrian Hills, sometimes multiple times in the same year. The Austrian Grand Prix is famous for many things, whether it be the sight of Rubens Barrichello getting out of the way of Michael Schumacher on the final lap, Juan Pablo Montoya spotting a deer running across the track, or Max Verstappen leaving elevens in the start/finish straight, there are certainly plenty of great races that have taken place around this circuit. Since the introduction of sprint races in 2021, Austria has taken a sprint race every year, and this year was no different. Something about the simple track layout, short lap time, and open nature of the corners seems to play into the hands of a sprint format. Let's get into the report then.
Going into the weekend, the main news was the contract extension for Pierre Gasly, the Frenchman is already signed up to drive for Alpine in 2025, but given a recent shift in performance (and perhaps the rehiring of Flavio Briatore), Gasly decided to extend his tenure at the team beyond 2025. The deal is a multi-year deal, starting in 2026 and allowing for the team, and driver, to extend at will. I believe, though I am finding it hard to get any real information on this, that the contract is intended to run until the end of 2028, but don't quote me on that. It's kind of a no-brainer for Gasly, who has spent a lot of his carrier in the Red Bull stable, only recently getting out of it and making it to a manufacturer. With no seats available at Ferrari, Mercedes, McLaren, or Red Bull any time soon, it makes sense for Gasly to sign on to a reasonably well-funded team in the hopes that they can continue to turn this around. There's still no news as to who will partner Gasly in this venture, though many are suggesting that we could see a return of Mick Schumacher, the German racing-legend's son is currently competing in the World Endurance Championship for Alpine and could make a return to the pinnacle of motorsport for them in 2025. There other options are Jack Doohan (their reserve driver), and Victor Martins, both of which are competing in the F2 championship currently. It's really not much of a roster to be shouting about as neither Doohan or Martins has shone and impressed much in the lower categories, and we all saw what the pressure of F1 did to Schumacher. Could Alpine look elsewhere for a driver? Perhaps a certain Danish driver who might be out of contract for next year?
Rumours are once again circling that Max Verstappen is going to Mercedes next year, with Toto Wolff basically coming out to say that it's either Verstappen or Antonelli who will be driving alongside George Russell next year. This really is quite an interesting story, because Max has not actually stated whether any of it has any traction yet, and Mercedes are yet to sign their most likely option, Antonelli. It's a tough choice for the former Constructors' Champions as they have to somehow save-face in the ego war that is F1 with the departure of their 7-time champion Lewis Hamilton. Toto was seen having a lengthy discussion in the Mercedes hospitality unit with Kimi Antonelli over the Austrian Grand Prix weekend, but nothing from the German outfit yet as to whether they have made their decision. Christian Horner, who is always quick to criticise his former rivals, came out saying that "Lewis has seen the engine regulations, seen Mercedes' plans for the new regulation change, has all the faith in Mercedes from their previous success, and still chose to leave, so why would Max go?", and to be fair he has a point. Though I suspect Max might be tempted by a simpler life in silver, with many still not forgetting the early-season drama at camp Red Bull. Antonelli would also be an interesting choice for Mercedes, with the young F2 driver being their "next-big-thing". Do Mercedes take a Verstappen-like risk with Antonelli and just accept that there are going to be a few seasons where he makes mistakes and costs them a lot of money? It would put them in a position where George Russell, their previous "next-big-thing", is now the experienced hat at Mercedes, despite being very much part of the Youth of Formula 1 at the moment. Only time will tell on this I feel.
Finally, the Austrian Grand Prix had a major re-profiling prior to the Grand Prix weekend in an attempt to combat some of the track-limit issues that we have seen there in recent years. I'm sure everyone over the age of 25 can remember the videos of the cars in the early 2000s going super wide at nearly every corner at the Austrian track, which is something that has been heavily policed in recent years as the cars improve over bumps and can carry far more speed into corners than ever before. Well last year, the Austrian Grand Prix set something of a record with more than 1200 track violations in 71 laps. I remember writing the report for that one several days after the race because it took the stewards five hours to declare the official finishing order and I was worried that they still would correct it. 14 of 20 drivers had their finishing positions changed after the race, with only two drivers sticking to the rules for the entire Grand Prix. Well to combat this problem, F1 placed gravel on the outside of nearly every corner (well those that didn't already have it) and brought the kerbs in a little to punish drivers more for running wide. The newly re-profiled circuit certainly turned heads as drivers and teams arrived in the paddock, but I think we can all agree that, at least for this circuit, the method of adding gravel seems to work quite well.
import os
import subprocess
import src.dataIO as io
import src.webDataIO as wio
from pathlib import Path
year = 2024
race = 'Austria'
Grand Prix Report¶
Free practice was reduced to just one session, with Austria being a Sprint weekend. Verstappen topped the timing sheets despite bringing out the red flag earlier in the session. The Dutchman's Red Bull cut out approaching the final corner and he was free-wheeling down the start/finish straight. He managed to get it back to the pits and was able to rejoin the session. Norris had a bit of an excursion into the gravel trap down at turn 4, and again at 9 and 10. Both McLarens actually had a bit of a shocker with track limits during free practice. The rivalry we have always wanted sparked its ugly head again this week, as Lance Stroll and Lewis Hamilton almost had a coming together at turn 3, the Brit this time being on the receiving end of some blocking. Unlike in Spain, Lewis didn't retaliate by driving into the side of Stroll, just once again proving that Lance doesn't have what it takes to be behind the wheel of an F1 Car.
Sprint Qualifying¶
Free practice was quickly followed by a sprint qualifying session, a three-session, shorter, shootout for sprint pole position on Friday afternoon. It was seven-time champion Lewis Hamilton who was first out on track, the British driver was not, however, the first to get a time on the board. He found is flying lap deleted due to track limit infringements and was only able to set a lap with one minute left on the session timer. Hamilton really did leave it to the last minute on that one. Most of the drivers were fairly well behaved throughout Sprint Qualifying, it's a format that I'm not sure entirely works, as really it's just a shorter version of the normal qualifying session. Daniel Ricciardo, Nico Hulkenberg, Valtteri Bottas, Alex Albon, and Guanyu Zhou were your early departures from SQ1, with the Aussie man's future definitely in question at the moment. RB are looking for speed and consistency, and it's something that Daniel has certainly been lacking recently. RB's upgrades haven't really been up to scratch either if we're being totally honest. Fernando Alonso barely scraped out of SQ1 either, the Spaniard has done nothing but go backwards recently with Aston Martin's woeful performance. Also lucky not to be out in SQ1 is Yuki Tsunoda, the RB driver span at turn 9 and was going backwards into turn 10 in the dying stages of the session, he scraped through in fifteenth position as the two Alpines improved.
SQ2 saw the elimination of Kevin Magnussen, Lance Stroll, Fernando Alonso, Yuki Tsunoda, and Logan Sargeant, yep that's right, just as time is ticking on the American's time in Formula 1, he goes and outperforms his teammate and makes it into a qualifying 2 session. Rumour has it that Logan is heading to Indy Car next year to be replaced by Sainz, but he didn't let that stop him from putting in a reasonable performance in Sprint Qualifying. Both Aston Martins looked a handful during the session with Stroll power sliding through the final corners. It seems that Aston are just unable to continue to develop a car throughout a season, it's a trend we've seen over and over again. Yuki wasn't able to put a good lap together, or perhaps that was the absolute maximum pace in that RB, but the quite shocking exit was Kevin Magnussen. The Danish driver put in a purple sector 1, personal best sector 2, but just couldn't keep it together in the final sector and finished eleventh, just 0.049 seconds away from progression.
SQ3 was actually quite a short session because none of the drivers left the pitlane until there were only 2 minutes left on the clock. This, to me, is the worst part about sprint weekends. They give the teams 1 set of tyres less than they normally get to compete in two extra competitive sessions and then wonder why the teams only do one lap in the final part of SQ3. For those who don't know, you get 2 sets of tyres for each free practice session, though teams are allowed to use any of those 6 at any time and must give 2 sets back to Pirelli at the end of each session (i.e., you could use all six in FP1, all four in FP2, and both in FP3), but on a sprint weekend, those sessions are replaced and drivers must use medium tyres in SQ1 and SQ2, so the teams get five sets of tyres to use in FP1, SQ1, SQ2, SQ3, SQ4, and SR. I get that they kind of want qualifying to be the fastest a car can go, so they don't want the sprint qualifying session to have the best conditions, it's still a shame that the "Sprint Shootout" isn't the fastest an F1 car can go. If we're going to get this situation where the drivers don't emerge until the final 2 minutes and then they creep around the lap and block each other, we'd be better off with a one-lap shootout in the final part of qualifying. Each driver gets their 1 minute (ish) lap, 10 drivers, approximately 10-15 minutes (roughly the same length as SQ3), and it would be far more exciting. Anyway Charles Leclerc didn't make it to start a lap because he had "engine troubles" in the pitlane and had left it too late to get around to start a lap, a disaster for the Ferrari man. Esteban Ocon, Pierre Gasly, and Sergio Perez all blocked each other and couldn't get a good lap in, which left the fight between Verstappen, Norris, Piastri, Russell, Hamilton, and Sainz for sprint pole. Having made the decision to go out earlier, Hamilton and Russell crossed the line first and set reasonable lap times. Piastri behind went quicker, but no one could beat MAx Verstappen. The Dutchman flew around the Styrian Hills to take another sprint pole. It was close between him and Norris, the Brit holding pole position for 10 glorious seconds. Piastri put it on third, some three-tenths back from his own teammate, followed by Russell, Sainz, Hamilton, Perez, Ocon, Gasly, and Leclerc.
wio.outputs_sq_data(
year=year,
race=race)
| Pos | No | Driver | Car | Q1 | Q2 | Q3 | Laps |
|---|---|---|---|---|---|---|---|
| 1 | 1 | Max Verstappen VER | Red Bull Racing Honda RBPT | 1:05.690 | 1:05.186 | 1:04.686 | 11 |
| 2 | 4 | Lando Norris NOR | McLaren Mercedes | 1:05.786 | 1:05.561 | 1:04.779 | 13 |
| 3 | 81 | Oscar Piastri PIA | McLaren Mercedes | 1:06.081 | 1:05.379 | 1:04.987 | 14 |
| 4 | 63 | George Russell RUS | Mercedes | 1:05.764 | 1:05.325 | 1:05.054 | 9 |
| 5 | 55 | Carlos Sainz SAI | Ferrari | 1:05.781 | 1:05.435 | 1:05.126 | 12 |
| 6 | 44 | Lewis Hamilton HAM | Mercedes | 1:06.504 | 1:05.539 | 1:05.270 | 13 |
| 7 | 11 | Sergio Perez PER | Red Bull Racing Honda RBPT | 1:06.256 | 1:05.612 | 1:06.008 | 14 |
| 8 | 31 | Esteban Ocon OCO | Alpine Renault | 1:06.343 | 1:05.686 | 1:06.101 | 12 |
| 9 | 10 | Pierre Gasly GAS | Alpine Renault | 1:06.465 | 1:05.757 | 1:06.624 | 12 |
| 10 | 16 | Charles Leclerc LEC | Ferrari | 1:06.149 | 1:05.526 | DNF | 12 |
| 11 | 20 | Kevin Magnussen MAG | Haas Ferrari | 1:06.387 | 1:05.806 | 8 | |
| 12 | 18 | Lance Stroll STR | Aston Martin Aramco Mercedes | 1:06.037 | 1:05.847 | 8 | |
| 13 | 14 | Fernando Alonso ALO | Aston Martin Aramco Mercedes | 1:06.487 | 1:05.878 | 9 | |
| 14 | 22 | Yuki Tsunoda TSU | RB Honda RBPT | 1:06.557 | 1:05.960 | 9 | |
| 15 | 2 | Logan Sargeant SAR | Williams Mercedes | 1:06.518 | DNF | 9 | |
| 16 | 3 | Daniel Ricciardo RIC | RB Honda RBPT | 1:06.581 | 6 | ||
| 17 | 27 | Nico Hulkenberg HUL | Haas Ferrari | 1:06.583 | 6 | ||
| 18 | 77 | Valtteri Bottas BOT | Kick Sauber Ferrari | 1:06.725 | 6 | ||
| 19 | 23 | Alexander Albon ALB | Williams Mercedes | 1:06.754 | 6 | ||
| 20 | 24 | Zhou Guanyu ZHO | Kick Sauber Ferrari | 1:07.197 | 6 |
Sprint Race¶
It was a clean get away for all involved at the start of the sprint race, Max pulled away from pole as the two McLarens were too busy fighting each other. Carlos Sainz launched an early attack on George Russel, sending it all the way around the outside of turn 4. Lando reeled Max in and by lap 3 was ready to launch an attack on the reigning champion. In preparation for the big race on Sunday, spoiler alert, Lando sent it from quite far back around the outside of Max into turn 3 giving him a good run down to turn 4 with DRS. Sadly this didn't lead to anything as Max had both moves covered. It only took a few more laps before he was ready to send it down the inside of turn 3 from about 5 car lengths back. He also gained DRS from this but let Max back through the inside into turn 4 and was then overtaken by his teammate Piastri into turn 5 and 6. Lando never truly recovered from this and had to sit back and watch as his two closest rivals finished ahead of him. Piastri couldn't do much about Max either, lacking that killer instinct to absolutely send it into just about any corner, or perhaps that's a good thing. Again, spoilers.
George Russell and Carlos Sainz spent a lot of the race fighting, with the Brit eventually getting past around lap 8 down the outside of turn 4. It was all stations hold thereafter as Russell, Sainz, Hamilton, and Leclerc finished in that order. Let's speak about Leclerc quickly, who was able to make good progress through the Alpines and Perez in the early stages of the sprint race, but couldn't really do anything about his future teammate in a Mercedes ahead.
Turn 3 and 4 were definitely the action spots of the sprint race, with Alonso getting tangled up with Hulkenberg into turn 3 (the first hairpin), a prelude for the feature race on Sunday for sure. Many drivers simply decided to send it into that corner, making defending very difficult. Many took to the run-off to avoid collisions, or were simply sent wide by the overtaking driver. No one, however, could stop Max Verstappen who fended off both McLaren drivers to take a sprint victory nby 4.6 seconds. Kevin Magnussen had a pretty decent race from eleventh on the grid too, to finish ahead of both Alpine drivers and just outside the points. It's not often we see a cool calm race from the Dane, so fair play. Even Lance Stroll managed to get ahead of both Alpine drivers, who seemingly had no pace in the early part of the race, at least they didn't hit each other eh? Solid performance from Daniel Ricciardo to recover a little from sprint qualifying and finish just behind his teammate, similar for Alex Albon who clawed his way back but couldn't get through his teammate either.
wio.outputs_sprint_data(
year=year,
race=race)
Austria
| Pos | No | Driver | Car | Laps | Time/Retired | PTS |
|---|---|---|---|---|---|---|
| 1 | 1 | Max Verstappen VER | Red Bull Racing Honda RBPT | 23 | 26:41.389 | 8 |
| 2 | 81 | Oscar Piastri PIA | McLaren Mercedes | 23 | +4.616s | 7 |
| 3 | 4 | Lando Norris NOR | McLaren Mercedes | 23 | +5.348s | 6 |
| 4 | 63 | George Russell RUS | Mercedes | 23 | +8.354s | 5 |
| 5 | 55 | Carlos Sainz SAI | Ferrari | 23 | +9.989s | 4 |
| 6 | 44 | Lewis Hamilton HAM | Mercedes | 23 | +11.207s | 3 |
| 7 | 16 | Charles Leclerc LEC | Ferrari | 23 | +13.424s | 2 |
| 8 | 11 | Sergio Perez PER | Red Bull Racing Honda RBPT | 23 | +17.409s | 1 |
| 9 | 20 | Kevin Magnussen MAG | Haas Ferrari | 23 | +24.067s | 0 |
| 10 | 18 | Lance Stroll STR | Aston Martin Aramco Mercedes | 23 | +30.175s | 0 |
| 11 | 31 | Esteban Ocon OCO | Alpine Renault | 23 | +30.839s | 0 |
| 12 | 10 | Pierre Gasly GAS | Alpine Renault | 23 | +31.308s | 0 |
| 13 | 22 | Yuki Tsunoda TSU | RB Honda RBPT | 23 | +35.452s | 0 |
| 14 | 3 | Daniel Ricciardo RIC | RB Honda RBPT | 23 | +39.397s | 0 |
| 15 | 14 | Fernando Alonso ALO | Aston Martin Aramco Mercedes | 23 | +43.155s | 0 |
| 16 | 2 | Logan Sargeant SAR | Williams Mercedes | 23 | +44.076s | 0 |
| 17 | 23 | Alexander Albon ALB | Williams Mercedes | 23 | +44.673s | 0 |
| 18 | 77 | Valtteri Bottas BOT | Kick Sauber Ferrari | 23 | +46.511s | 0 |
| 19 | 27 | Nico Hulkenberg HUL | Haas Ferrari | 23 | +48.423s | 0 |
| 20 | 24 | Zhou Guanyu ZHO | Kick Sauber Ferrari | 23 | +53.143s | 0 |
Qualifying Report¶
It was much the same story in qualifying as it was in sprint qualifying. Q1 was the closest qualifying session the sport has seen since the introduction of the three-session qualifying format, the gap from Sainz to Zhou only 0.725 seconds. The usual suspects went out in Q1; including Guanyu Zhou, Logan Sargeant, Valtteri Bottas, Lance Stroll, and Alex Albon. It's highly disappointing to see Lance Stroll in the bottom five, despite how often is appears to be happening. The Canadian Driver has recently resigned with the classic British outfit to partner Fernando Alonso next year, in a move that literally shocked no one. It seems that Aston Martin have spent most of this season going backwards as they struggle to put upgrades on that car. Many are thinking that the car is being designed around Stroll, hence the constant downturn in Alonso's pace.
Alonso was the shock outing in Q2, only managing fifteenth position in the second part of qualifying. It's not a sight we are used to seeing, but there seemed to be no pace left in the green machine. He was joined by Yuki Tsunoda, Pierre Gasly, Kevin Magnussen, and Daniel Ricciardo. The RB upgrades simply haven't been enough but it is certainly nice to see Ricciardo beating Yuki again this year as the Aussie finds his form. Magnussen's weak point this year has typically been his race performances, but it seems that now his qualifying pace is also suffering. The Dane just not able to keep up with his German teammate. Gasly had a late lap-time deletion due to track limits, hence is unusually early exit.
Going into qualifying, George Russel was 8-2 up in the fight with his teammate and the young Brit, who is staying at the German manufacturer for next year, beat the seven-time champion once again in qualifying by putting his Mercedes on the second row of the grid. Lewis didn't have much to say this week, probably as he has been warned against igniting the teamLH fan club. Seems it was purely on performance this week. Max Verstappen seemed to be on rails in the final part of qualifying, while it might not look very quick the Red Bull car seems effortless in its pace at the moment. The reigning champion cruised to pole position by 4-tenths of a second to Lando Norris after his teammate Oscar Piastri had his last lap time deleted due to track limits. In the battle of the red cars, Carlos Sainz beat his teammate Charles Leclerc after the Monaco race winner went off-road on his final lap, bouncing across the grass into the final corner. Sergio Perez actually made it all the way through to the final part of qualifying but wasn't really in the mix, finishing 0.2 seconds behind Oscar Piastri and nearly a full second behind teammate Max Verstappen, in fact Perez's main competition was Nico Hulkenberg, the German putting that Haas in ninth ahead of Esteban Ocon.
wio.outputs_qualifying_data(
year=year,
race=race)
| Pos | No | Driver | Car | Q1 | Q2 | Q3 | Laps |
|---|---|---|---|---|---|---|---|
| 1 | 1 | Max Verstappen VER | Red Bull Racing Honda RBPT | 1:05.336 | 1:04.469 | 1:04.314 | 18 |
| 2 | 4 | Lando Norris NOR | McLaren Mercedes | 1:05.450 | 1:05.103 | 1:04.718 | 20 |
| 3 | 63 | George Russell RUS | Mercedes | 1:05.585 | 1:05.016 | 1:04.840 | 18 |
| 4 | 55 | Carlos Sainz SAI | Ferrari | 1:05.263 | 1:05.016 | 1:04.851 | 18 |
| 5 | 44 | Lewis Hamilton HAM | Mercedes | 1:05.541 | 1:05.053 | 1:04.903 | 18 |
| 6 | 16 | Charles Leclerc LEC | Ferrari | 1:05.509 | 1:05.104 | 1:05.044 | 22 |
| 7 | 81 | Oscar Piastri PIA | McLaren Mercedes | 1:05.311 | 1:05.070 | 1:05.048 | 17 |
| 8 | 11 | Sergio Perez PER | Red Bull Racing Honda RBPT | 1:05.587 | 1:05.144 | 1:05.202 | 21 |
| 9 | 27 | Nico Hulkenberg HUL | Haas Ferrari | 1:05.596 | 1:05.262 | 1:05.385 | 21 |
| 10 | 31 | Esteban Ocon OCO | Alpine Renault | 1:05.574 | 1:05.274 | 1:05.883 | 24 |
| 11 | 3 | Daniel Ricciardo RIC | RB Honda RBPT | 1:05.569 | 1:05.289 | 15 | |
| 12 | 20 | Kevin Magnussen MAG | Haas Ferrari | 1:05.508 | 1:05.347 | 15 | |
| 13 | 10 | Pierre Gasly GAS | Alpine Renault | 1:05.598 | 1:05.359 | 18 | |
| 14 | 22 | Yuki Tsunoda TSU | RB Honda RBPT | 1:05.563 | 1:05.412 | 15 | |
| 15 | 14 | Fernando Alonso ALO | Aston Martin Aramco Mercedes | 1:05.656 | 1:05.639 | 15 | |
| 16 | 23 | Alexander Albon ALB | Williams Mercedes | 1:05.736 | 9 | ||
| 17 | 18 | Lance Stroll STR | Aston Martin Aramco Mercedes | 1:05.819 | 9 | ||
| 18 | 77 | Valtteri Bottas BOT | Kick Sauber Ferrari | 1:05.847 | 9 | ||
| 19 | 2 | Logan Sargeant SAR | Williams Mercedes | 1:05.856 | 9 | ||
| 20 | 24 | Zhou Guanyu ZHO | Kick Sauber Ferrari | 1:06.061 | 9 |
Race Report¶
With all that settled it looked to be quite the lineup for the feature race, a proper Max vs Lando vs George fight at the slip-stream track of the year going down to two heavy braking zones on the opening lap. Max actually got a good start off the line and pulled away in the opening part of the Grand Prix. George and Lewis ended up battling the Ferrari car of Carlos Sainz for most of the Grand Prix as teammate Charles Leclerc got damage in a first-corner incident with Oscar Piastri and Sergio Perez as he found himself in the middle of a squeezing manoeuvre. Charles couldn't really get anything right this weekend as a poor strategy left him fighting well down the order for most of the race and only managed to come home in eleventh position behind the Alpine of Pierre Gasly. Despite an early attempt to fight the Mercedes pair, Carlos Sainz could only beat his replacement for next year to bring some points to the Italian outfit and finish third. Not a good weekend for Ferrari that's for sure, but still, it seems like their performance has vanished, so there's more pain to come yet.
After the opening lap contact between Piastri and Perez, the Mexican was nowhere to be seen, finishing some 20 seconds behind his teammate Max Verstappen after a ten-second penalty, an extra pit stop, and an entire lap on three wheels. Speaking of, I suppose I should comment on the battle for the lead before I go any further because I'm talking about these drivers' finishing positions like they spent the entire race fighting at the sharp end. Max Verstappen and Lando Norris spent most of the race pulling away from the rest of the field, with the Dutchman having the slight advantage over the Brit for most of the Grand Prix. A slow pit stop and a lock up at turn 4 left Max in the clutches of the very powerful DRS at the Austrian circuit and Lando spent the latter stages of the race throwing everything he had at Max. When I say that, I mean it with all due respect, but if you ask for my honest opinion, the move was only really on in the first few laps of their battle. After that, we started to see some desperation from Lando. Turn 3 was his favourite position, launching an attack on multiple occasions from quite some distance back, forcing Max off the track, and even overshooting the track himself. And yes, I will comment on Max too. The Dutchman rather returned to his tactics of old, moving slightly as the chasing driver launched an attack, forcing them into a state of panic and causing them to make mistakes. We've seen it before with Max, and in fact there is a rule that now exists stating how many times the defender is allowed to move in the entry to a corner. I would say that both drivers were pushing the limit at every opportunity, and in fact they were saved by the Alpines battling Alonso, who went unpunished for some of their moves. It all reached a boiling point, however, on lap 64, when Lando tried to go around the outside into turn 3, where the track narrows a little. The two made wheel-to-wheel contact at the rear and both suffered a puncture. On the way back into the pits, Lando's tyre shredded itself and the floor of the car, despite the advice from his team, Lando retired and stormed off through the garage.
Please bare in mind, what follows next is an honest, unbiased opinion of the event, written many days after the race and after both drivers have admitted that they were both to blame for the incident on some level.
In my opinion, the blame lies with both of the drivers for this incident, and the result they were both able to achieve is also entirely reflective of their experience and character. Firstly, Lando had spent a good ten laps throwing everything he had at Max, in some cases quite desperately. Max has always raced hard, and has on occasion pushed the limits of what is in the rules and what is sporting. It's part of the reason people love him, it's part of the reason he is a triple world champion, and it's part of the reason he has been so dominant in recent years. It's something Schumacher, Vettel, Alonso, Hamilton, Senna, Prost, and many other world champions have done in the past, put yourself in a position where the other driver has to back out or you're going to have an incident. Yes Max drifts across the track as the pair approach the hairpin, but so do similar overtakes in past years from Sebastian Vettel, Lewis Hamilton, Carlos Sainz, and Max Verstappen. It's the nature of that part of the track. Did Max leave enough room? Well yeah just about, there was space for a car, just, and the kerb there is pretty flat and one can run over it and not lose any time. Did Lando come from quite far back? Yes he did, the move wasn't really on and it looked like perhaps he was trying to set up a move for turn 4 and out-braked himself a little going into that corner. Does that mean they are both to blame? Yes. So how did the incident affect their positions? Well, Max's puncture seemed to be a lot worse initially, but Max managed to keep the tyre together pretty well, taking it very carefully on the in-lap and maintaining that tyre structure to cause minimal damage to the car. He was able to make it back to the pits, put on some soft tyres and make the gap for the ten-second penalty he was awarded after the race. Lando, on the other hand, took the in-lap too aggressively and shredded the tyre, leaving behind a trail of carbon fibre on the pit-exit and final corner approach that should have resulted in a penalty, given how Perez was punished in Canada. He lost his cool and destroyed his own race. This is part of what makes a champion a champion, drivers like Hamilton, Vettel, Verstappen, etc. know that when things like this happen, because they do happen, you have to take every opportunity you can to score points. As it happens, this means that Max actually out-scored his nearest rivals Norris and Leclerc, who both finished outside the points.
This, however, meant that third place man, George Russell, was able to take Mercedes' first race win since Brazil 2022 after a late race fight with Oscar Piastri who was on a charge to salvage McLaren's race. The Aussie managed to come home in second place with Carlos Sainz in third, and Lewis Hamilton in fourth. A result that has really shaken up the Constructors' championship. It might be lucky for George, but he was in the right place at the right time to take advantage of the chaos that was happening in front of him, and sometimes that's how you have to play it. You have to be there for when the opportunity appears. It's a strong performance for George, even without the win, with the Brit putting in a solid performance in third place until the crash. He wasn't the only one to benefit from the coming together either, Haas essentially doubled their points tally, bringing home a sixth and eighth place and 12 points in total. Nico actually held off Sergio Perez on the final lap to properly embarrass the Austrian brand on home soil. Daniel Ricciardo managed to turn his fortunes round and score a nice 2 points, ahead of Pierre Gasly in the lead Alpine in tenth place. The two Alpines spent most of the race fighting, but once again Gasly came out on top.
wio.outputs_race_result(
year=year,
race=race)
| Pos | No | Driver | Car | Laps | Time/Retired | PTS |
|---|---|---|---|---|---|---|
| 1 | 63 | George Russell RUS | Mercedes | 71 | 1:24:22.798 | 25 |
| 2 | 81 | Oscar Piastri PIA | McLaren Mercedes | 71 | +1.906s | 18 |
| 3 | 55 | Carlos Sainz SAI | Ferrari | 71 | +4.533s | 15 |
| 4 | 44 | Lewis Hamilton HAM | Mercedes | 71 | +23.142s | 12 |
| 5 | 1 | Max Verstappen VER | Red Bull Racing Honda RBPT | 71 | +37.253s | 10 |
| 6 | 27 | Nico Hulkenberg HUL | Haas Ferrari | 71 | +54.088s | 8 |
| 7 | 11 | Sergio Perez PER | Red Bull Racing Honda RBPT | 71 | +54.672s | 6 |
| 8 | 20 | Kevin Magnussen MAG | Haas Ferrari | 71 | +60.355s | 4 |
| 9 | 3 | Daniel Ricciardo RIC | RB Honda RBPT | 71 | +61.169s | 2 |
| 10 | 10 | Pierre Gasly GAS | Alpine Renault | 71 | +61.766s | 1 |
| 11 | 16 | Charles Leclerc LEC | Ferrari | 71 | +67.056s | 0 |
| 12 | 31 | Esteban Ocon OCO | Alpine Renault | 71 | +68.325s | 0 |
| 13 | 18 | Lance Stroll STR | Aston Martin Aramco Mercedes | 70 | +1 lap | 0 |
| 14 | 22 | Yuki Tsunoda TSU | RB Honda RBPT | 70 | +1 lap | 0 |
| 15 | 23 | Alexander Albon ALB | Williams Mercedes | 70 | +1 lap | 0 |
| 16 | 77 | Valtteri Bottas BOT | Kick Sauber Ferrari | 70 | +1 lap | 0 |
| 17 | 24 | Zhou Guanyu ZHO | Kick Sauber Ferrari | 70 | +1 lap | 0 |
| 18 | 14 | Fernando Alonso ALO | Aston Martin Aramco Mercedes | 70 | +1 lap | 0 |
| 19 | 2 | Logan Sargeant SAR | Williams Mercedes | 69 | +2 laps | 0 |
| 20 | 4 | Lando Norris NOR | McLaren Mercedes | 64 | +7 laps | 0 |
Fastest Lap¶
Fernando Alonso took the fastest lap of the race on his final lap, as he finished 1 lap down to George Russell, taking the fastest lap point away from Max Verstappen in the dying stages with a lap of 1:07.694 and an average speed of 229.633 km/h. As he finished eighteenth, the Spaniard won't score the extra point, but in classic Alonso fashion, he does stop anyone in the top ten from scoring that extra point.
wio.outputs_fastest_lap(
year=year,
race=race)
| Pos | No | Driver | Car | Lap | Time of day | Time | Avg Speed |
|---|---|---|---|---|---|---|---|
| 1 | 14 | Fernando Alonso ALO | Aston Martin Aramco Mercedes | 70 | 16:28:12 | 1:07.694 | 229.633 |
| 2 | 1 | Max Verstappen VER | Red Bull Racing Honda RBPT | 68 | 16:24:27 | 1:07.719 | 229.548 |
| 3 | 4 | Lando Norris NOR | McLaren Mercedes | 53 | 16:05:58 | 1:08.016 | 228.546 |
| 4 | 81 | Oscar Piastri PIA | McLaren Mercedes | 56 | 16:09:45 | 1:08.697 | 226.280 |
| 5 | 63 | George Russell RUS | Mercedes | 48 | 16:00:20 | 1:09.164 | 224.752 |
| 6 | 55 | Carlos Sainz SAI | Ferrari | 56 | 16:09:41 | 1:09.282 | 224.369 |
| 7 | 44 | Lewis Hamilton HAM | Mercedes | 61 | 16:15:51 | 1:09.562 | 223.466 |
| 8 | 16 | Charles Leclerc LEC | Ferrari | 55 | 16:09:32 | 1:09.584 | 223.396 |
| 9 | 10 | Pierre Gasly GAS | Alpine Renault | 45 | 15:57:30 | 1:09.609 | 223.315 |
| 10 | 31 | Esteban Ocon OCO | Alpine Renault | 45 | 15:57:32 | 1:09.649 | 223.187 |
| 11 | 11 | Sergio Perez PER | Red Bull Racing Honda RBPT | 56 | 16:10:20 | 1:09.694 | 223.043 |
| 12 | 20 | Kevin Magnussen MAG | Haas Ferrari | 45 | 15:57:22 | 1:10.125 | 221.672 |
| 13 | 18 | Lance Stroll STR | Aston Martin Aramco Mercedes | 54 | 16:08:14 | 1:10.143 | 221.615 |
| 14 | 27 | Nico Hulkenberg HUL | Haas Ferrari | 51 | 16:04:25 | 1:10.215 | 221.388 |
| 15 | 22 | Yuki Tsunoda TSU | RB Honda RBPT | 54 | 16:08:20 | 1:10.318 | 221.064 |
| 16 | 23 | Alexander Albon ALB | Williams Mercedes | 41 | 15:52:53 | 1:10.364 | 220.919 |
| 17 | 2 | Logan Sargeant SAR | Williams Mercedes | 60 | 16:16:27 | 1:10.406 | 220.788 |
| 18 | 3 | Daniel Ricciardo RIC | RB Honda RBPT | 49 | 16:02:08 | 1:10.426 | 220.725 |
| 19 | 77 | Valtteri Bottas BOT | Kick Sauber Ferrari | 48 | 16:01:17 | 1:10.449 | 220.653 |
| 20 | 24 | Zhou Guanyu ZHO | Kick Sauber Ferrari | 54 | 16:08:56 | 1:10.470 | 220.587 |
Fantasy League Scores¶
Lineup Scores¶
Ok I think I have waffled enough, let's see what this race has done to the fantasy league standings. First let's begin with the driver/team points for the grid. The data you see below are the current total points and values for each driver and team. Values are taken going into the race and updated for next race after I submit the report.
weekly_scores = {
"Name": ["Points", "Value"],
"Race": [f'{race}'],
"Ocon": [49, 10.1],
"Gasly": [60, 9.6],
"Stroll": [60, 14.1],
"Alonso": [102, 16.4],
"Leclerc": [282, 23.2],
"Sainz": [234, 21.6],
"Bearman": ["N/A", "N/A"],
"Magnussen": [63, 10.0],
"Hulkenberg": [60, 8.7],
"Bottas": [28, 7.9],
"Guanyu": [48, 7.8],
"Norris": [287, 26.0],
"Piastri": [223, 21.7],
"Hamilton": [174, 21.7],
"Russell": [218, 21.1],
"Tsunoda": [61, 9.5],
"Ricciardo": [25, 9.9],
"Verstappen": [364, 30.8],
"Perez": [198, 22.5],
"Albon": [0, 8.0],
"Sargeant": [1, 5.5],
"Alpine": [142, 9.6],
"Aston Martin": [221, 15.2],
"Ferrari": [651, 22.7],
"Haas": [155, 9.4],
"Kick Sauber": [82, 7.2],
"McLaren": [566, 25.7],
"Mercedes": [507, 22.2],
"RB": [137, 9.7],
"Red Bull": [762, 28.9],
"Williams": [16, 6.2]}
root = Path().absolute()
if Path(f'{root}/Data/{year}/Lineup/{race}_Results.json').is_file():
pass
else:
io.save_json_dicts(
out_path=Path(f'{root}/Data/{year}/Lineup_Weekly.json'),
dictionary=weekly_scores)
subprocess.run(["python", "lineup.py", f'{year}'])
CompletedProcess(args=['python', 'lineup.py', '2024'], returncode=0)
George Russell is the highest scorer this week, edging out McLaren's Oscar Piastri at the top by just 1 point, the Brit brings home an impressive 43 points, while the Aussie manages 42. They're both well clear of third place Carlos Sainz with 28 points, showing that the race performances are far more important than the sprint or qualifying sessions as the top three are the podium sitters. Max Verstappen salvages his weekend by finishing fourth this week with 25 points, ahead of Lewis Hamilton in fifth with 23 points. A strong week for the Mercedes pair, that's for sure. Logan Sargeant may as well not have bothered, the American driver scores 0 this week at the bottom of the table, equalling Oliver Bearman who hasn't raced since Saudi Arabia. Guanyu Zhou is next with just 2 points, behind Esteban Ocon in third with 4 points. Valtteri Bottas takes a lonely fourth with 8 points, and then there's a three-way of Alonso, Ricciardo, and Tsunoda rounding out the bottom five with 10 points.
Mercedes then, take the top spot this week with an impressive 76 points. They were the only team to have two drivers anywhere near the top five, so that does make a lot of sense, and both drivers made some good progress through the field compared to their grid positions. Ferrari maintain some of that consistency in second with 69 points, and Red Bull just beat out McLaren in third with 56 points. Kick Sauber were the worst team this week, the Swiss outfit only managing 9 points, just behind Williams with 11 and Alpine with 21.
Max Verstappen stretches out that lead at the top of the table for another week, the reigning champion now sitting comfortably on 364 points ahead of Lando Norris in second with 287. They're being chased by the Ferrari boys with Leclerc in third with 282 points, and Sainz in fourth with 234 points. Oscar Piastri is closing in after another strong week in fifth, the Aussie has 223 points. It's official, all drivers are now back on positive points, with Alex Albon at the bottom of the table with 0 points. He's joined by teammate Logan Sargeant with 1 point. The Williams pair are now quite some way behind Daniel Ricciardo with 25 points, and Valtteri Bottas with 28 points. Teammate Zhou Guanyu rounds out the bottom five with 48 points.
Red Bull are still pretty comfortable at the top of the table with 762 points, ahead of Ferrari in second with 651 and McLaren with third with 566, but if Mercedes keep out-scoring them, we might see a change for that top three. Williams are still at the bottom with 16 points, behind Kick Sauber with 82 points, and RB with 137 points rounding out the bottom three teams.
points_files = [
'Driver_Points_Bar.png',
'Team_Points_Bar.png',
'Driver_Sum Points.png',
'Team_Sum Points.png']
directory_path = Path(f'{root}/Data/{year}/Figures/{race}')
file_paths = [Path(f'{directory_path}/{race}_{file}') for file in points_files]
[io.display_img(file_path=path, width=1200, height=720) for path in file_paths]
[None, None, None, None]
Max's value continues to shoot up after a strong race in Spain last week, the reigning champion adds $0.1 to his value, taking him to $30.8 at the top of the table. Lando Norris increases too, up to $26.0 as Charles Leclerc somehow increases in value too, the Monaco race winner is valued at $23.2. Sergio Perez in next with a value of $22.5, and Oscar Piastri matches Lewis Hamilton's value at $21.7. Logan Sargeant is your cheapest driver still, with the gap ever growing, the American driver is worth $5.5. The Kick Sauber pair are next with Zhou and Bottas valued at $7.8 and $7.9, respectively. Alex Albon at $8.0, and Nico Hulkenberg is valued at $8.7.
Red Bull also take an increase in value this week, the Austrian team going up to $28.9 ahead of McLaren in second at $25.7 and Ferrari in third with $22.7. Williams are your cheapest option with a value of $6.2, Kick Sauber with $7.2, and Haas at $9.4.
All values given in millions of dollars. Values representative of the pre-race value, i.e., how much would it cost to have them in your team for the race.
average_files = [
'Driver_Values_Bar.png',
'Team_Values_Bar.png',
'Driver_Average Points.png',
'Team_Average Points.png']
directory_path = Path(f'{root}/Data/{year}/Figures/{race}')
file_paths = [
Path(f'{directory_path}/{race}_{file}') for file in average_files]
[io.display_img(file_path=path, width=1200, height=720) for path in file_paths]
[None, None, None, None]
Your best value for money this week was Nico Hulkenberg, the German driver bringing in an impressive 2.3 ppm ahead of race winner George Russel with 2.04 ppm. Oscar Piastri, after out-scoring his teammate brings in an impressive 1.94 ppm. It's an all Haas affair as Kevin Magnussen is next with a 1.6 ppm, ahead of Alex Albon with 1.5 ppm. Logan Sargeant was, obviously, your worst choice this week with 0 ppm. Guanyu Zhou continues to disappoint with 0.26 ppm, as does Esteban Ocon with 0.4 ppm. Lando Norris, despite not finishing, somehow manages to beat those three with 0.5 ppm, and Fernando Alonso rounds out the bottom five with 0.61 ppm.
Haas dominate the weekend, topping the constructors' value for money table with 4.36 ppm, ahead of Mercedes in second with 3.42 ppm. Ferrari round out the top three with 3.04 ppm. Kick Sauber were your worst option of the weekend, only managing 1.25 ppm. Williams and Aston duel it out at the bottom with 1.77 ppm and 1.78 ppm, respectively.
ppm = points per million dollars.
ppv_files = [
'Driver_Points Per Value_Bar.png',
'Team_Points Per Value_Bar.png',
'Driver_Average Points Per Value.png',
'Team_Average Points Per Value.png']
directory_path = Path(f'{root}/Data/{year}/Figures/{race}')
file_paths = [Path(f'{directory_path}/{race}_{file}') for file in ppv_files]
[io.display_img(file_path=path, width=1200, height=720) for path in file_paths]
[None, None, None, None]
subprocess.run(["python", "manager.py", f'{year}'])
CompletedProcess(args=['python', 'manager.py', '2024'], returncode=0)
Manager Scores¶
So let's see what this week's scores on the doors are. It's a total domination at the top for Madlen with their teams Go Boys Give Us Nothing and Maxy & The Boys taking first and second with 291 and 279 points, respectively. Close behind is Sebastian and Denso Panasonic Toyota F1 with 268, again just ahead of Val and Make A U Turn in fourth place with 263, all very tight at the top for sure. Rounding out the top five is Cameron and Stuart's Snipped Balls with 255 points. Interestingly, not a championship leader in sight there.
At the bottom end, it's Will and The Big One who take the honours this week with a minimal 60 points, just 2 ahead of Charlie and Lee Carvallo's F1 Challen in second with 62 points. Patrick is next with their team Racing No Points, tied with Stuart and Joe with their teams Ferrari Strategists and alpine sandbags, all three scoring 70 points for third place. James and Bwoah Rolex Sipsmith Golf are next up, just 8 points back, with 78, and Andrew and sBinnala Yacht Club round out the bottom five with 112 points.
What has that done to the championship standings? Well it's still Stefanus out front with Haryanto and Syahrul with 2537 and 2347 points, respectively. But we have a disturbance in the force! Yes that's right, for the first time in a very very long time, Patrick and Johnny UniHaas have made it into the top three with 2254 points. Stefanus and Gelael have dropped a place in fourth with 2245, and Toby and Hesketh 2.1 round out the top five with 2115 points.
There's absolutely no change in the bottom five, it's still Patrick and Racing No Points out front with 376 points, ahead of Will and The Big One with 418 points. Joe and alpine sandbags are next with 443 points, with Stuart and Ferrari Strategists in fourth with 460 points. Charlie and Lee Carvallo's F1 Challen round out the bottom five with 473 points.
Our biggest winner this week is Madlen and Maxy & The Boys with an 8-place gain. In second it's Cameron and Stuart's Snipped Balls who gain 7 places this week, followed by Stuart and Christian's Hornie with a gain of 5 places. Our biggest loser this week is Jake with An Oscar For Breakfast, who drop a massive 4 places along with Cameron and Matty's Snipped Balls and Sebastian with Telefonica Minardi Doimo.
team_files = [
'LeagueTeams_Points_Bar.png',
'LeagueTeams_Sum Points_Bar.png',
'LeagueTeams_Sum Points.png',
'LeagueTeams_PositionsGained_Bar.png']
directory_path = Path(f'{root}/Data/{year}/Figures/{race}')
file_paths = [
Path(f'{directory_path}/{race}_{file}') for file in team_files]
[io.display_img(file_path=path, width=1200, height=720) for path in file_paths]
[None, None, None, None]
I have finally found the bug in the team values processing code, not to bore you too much but it was entirely down to the No Negative Perk and the way my calculation was figuring out the points, which then applied it to the values too (despite the perk not having that effect on the values). Bwoah OnlyFans VIP Racing is living life to the full at the top of the values charts, with manager James unavailable for comment this week. Some say their budget is due to a monthly sponsorship subscription. They are valued at $121.8, a full $1 ahead of Sam-CJ and Mirror, Signal, Manoeuvre at $120.8. Madlen and Les Eclairs round out the top three high rollers with a value of $120.4. By contrast James and The Big One are operating on a miniscule budget at the moment, sitting at a value of $52.3, just behind Stuart and Ferrari Strategists with a value of $53.4, something they share with Patrick and Racing No Points. Rounding out the bottom three is Joe and alpine sandbags, valued at $56.4. All values are given in millions.
It isn't all about the money though, it's about what you do with it. With that in mind, this week it is Sebastian and Denso Panasonic Toyota F1 who are bringing in the most bang for their buck with a points per value of 2.68 ppm, ahead of Madlen and Go Boys Give Us Nothing with 2.67 ppm. Val and Make A U Turn are in third with 2.63 ppm, ahead of Cameron and Stuart's Snipped Balls with 2.55 ppm. Rounding out the top five is Madlen and Maxy & The Boys with 2.43 ppm. Our worst team of the week is Charlie and Lee Carvallo's F1 Challen with 1.04 ppm. They're followed by Matty and OB Latte with 1.07 ppm. In third place we have Will with The Big One at 1.15 ppm, followed by Matty and Throw Him In JaYal with 1.2 ppm. Jake and A Sauber or Kick or Stake rounds out the bottom five with Joe and alpine sandbags with 1.24 ppm. Points per million (ppm).
team_files = [
'LeagueTeams_Values_Bar.png',
'LeagueTeams_Sum Values.png',
'LeagueTeams_Points Per Value_Bar.png',
'LeagueTeams_Average Points Per Value.png']
directory_path = Path(f'{root}/Data/{year}/Figures/{race}')
file_paths = [
Path(f'{directory_path}/{race}_{file}') for file in team_files]
[io.display_img(file_path=path, width=1200, height=720) for path in file_paths]
[None, None, None, None]
Stefanus sits at the top of the managerial scores, with their three teams coming in with 7129 points ahead of Sebastian and Josh with 5824 and 5810 points, respectively. It's Phil in fourth place with their teams scoring a combined 5482 points, and impressively Pete rounds out the top five with their two teams scoring 5425 points. Our lowest scoring managers are the one-team heroes Chloe, Tim, Sam, and Toby, scoring 1425, 1810, 2079, and 2115 respectively. In fifth place at the bottom, we have Patrick with 2630 points.
Manager of the week this week is Madlen who scored an average of 270.67 points. Phil is a distant second with 213 points and Cameron in third with 203.67 points. Your worst manager of the week is Matty with an average score of 141.33, just behind Will with 142.67 and Charlie with 143.67 points.
manager_files = [
'LeagueManagers_Sum Points_Bar.png',
'LeagueManagers_Sum Points.png',
'LeagueManagers_Average Points_Bar.png',
'LeagueManagers_Sum Average Points.png']
directory_path = Path(f'{root}/Data/{year}/Figures/{race}')
file_paths = [
Path(f'{directory_path}/{race}_{file}') for file in manager_files]
[io.display_img(file_path=path, width=1200, height=720) for path in file_paths]
[None, None, None, None]
Manager of the week is Madlen with a points per value of 2.36 ppm, leaps ahead of Stuart in second with 1.99 ppm and Cameron in third with 1.93 ppm. Worst manager of the week is Matty with a points per value of 1.27 ppm. They're joined by Sam-CJ with 1.34 ppm and Jake with 1.38 ppm.
manager_files = [
'LeagueManagers_Sum Values.png',
'LeagueManagers_Average Values_Bar.png',
'LeagueManagers_Points Per Value_Bar.png',
'LeagueManagers_Average Points Per Value.png']
directory_path = Path(f'{root}/Data/{year}/Figures/{race}')
file_paths = [
Path(f'{directory_path}/{race}_{file}') for file in manager_files]
[io.display_img(file_path=path, width=1200, height=720) for path in file_paths]
[None, None, None, None]
You lot can't seem to decide which drivers you want in your team, and there seems to be quite the spread. Max Verstappen and Yuki Tsunoda are the most selected drivers of the week, each getting 29 of the 65 possible selections. Nico Hulkenberg is selected 27 times, and the Williams pair of Alex Albon and Logan Sargeant are in 25 and 24 teams throughout the championship. Charles Leclerc rounds out the top five selected drivers with 23 of 65 teams using the Ferrari man. Oli Bearman is showing up in 2 teams this week, somehow, and I have tracked him down. Oli is in The Big One (Will). Not sure quite how he is showing as a count of 2 as I have checked everywhere else for him. Perez and Stroll are your least used drivers that are actually on track, they both sit on 7 selections. And Carlos Sainz is the third least-used driver with only 8 of you choosing the Spaniard. Then it's the Mercedes pairing of Hamilton and Russell rounding out the bottom five with 9 and 10 selections each, though I suspect this might change soon.
Ferrari are your favourite team at the moment with a total of 25 of 65 uses this week, they are leaps and bounds ahead of McLaren with only 18 uses. Red Bull and Haas round out the top three with 14 selections each. Aston Martin have really fallen from grace, with many of you dropping them like a stone, they now only appear in 8 of the 65 team selections. Mercedes and Kick Sauber are the second-least used with 10 selections each, and Williams round out the bottom three with 11 uses.
Max Verstappen continues to be at the top of the DRS Boost count with 23 teams doubling the Dutchman's score, he's ahead of Norris with 15 uses and Leclerc with 9. Four of you used your extra DRS token this week and all used it on Max Verstappen. Five of you used your wildcard token, three used a limitless token, two used an auto pilot, and one person used a no negative token.
count_files = [
'LeagueCounts_Driver_Bar.png',
'LeagueCounts_Constructor_Bar.png',
'LeagueCounts_DRS Boost_Bar.png',
'LeagueCounts_Extra DRS_Bar.png',
'LeagueCounts_Perks_Bar.png']
directory_path = Path(f'{root}/Data/{year}/Figures/{race}')
file_paths = [
Path(f'{directory_path}/{race}_{file}') for file in count_files]
[io.display_img(file_path=path, width=1200, height=720) for path in file_paths]
[None, None, None, None, None]
count_files = [
'LeagueSumCounts_Driver.png',
'LeagueSumCounts_Constructor.png',
'LeagueSumCounts_DRS Boost.png',
'LeagueSumCounts_Extra DRS.png',
'LeagueSumCounts_Perks.png']
directory_path = Path(f'{root}/Data/{year}/Figures/{race}')
file_paths = [
Path(f'{directory_path}/{race}_{file}') for file in count_files]
[io.display_img(file_path=path, width=1200, height=720) for path in file_paths]
[None, None, None, None, None]
For more figures, please see the Facebook group album.
subprocess.run(["python", "league_prizes.py", f'{year}'])
CompletedProcess(args=['python', 'league_prizes.py', '2024'], returncode=0)
Prizes¶
Austria was, of course, a sprint race and therefore is part of the Sprint King prize for the 2024 season. Austria marks the third sprint race of the year, meaning we are exactly half-way through this prize now. So let's take a look at who is looking good in this category. Well it's Josh and Siemens McLaren West leading the way with 908 points, ahead of Josh and Petrobras Williams RBS F1 with 861. Stefanus and their three teams are close behind with Haryanto, Gelael, and Syahrul with 857, 857, and 853 points, respectively. We have some time to wait before the remaining sprint races, so there's plenty of time for these five teams to completely fall off before then.
The British Grand Prix is next, which is part of the Continental prize, so we will be tracking that one next week too.
directory_path = Path(f'{root}/Data/{year}/Figures/Prizes')
file_paths = [
Path(f'{directory_path}/{file}') for file in
os.listdir(directory_path) if f'{race}' in file]
[io.display_img(file_path=path, width=1200, height=720) for path in file_paths]
[None, None]
F1 Play¶
Our weekly winner in the F1 play league this week was Tim with a mediocre 4/10 predictions correct. Josh managed to score 2/10, while Stuart and Matty scored 0/10.
That takes the scores to:
Stuart - 28
Josh - 33
Matty - 15
Tim - 32
F1_play = {
"Stuart S": [3, 5, 2, 4, 0, 2, 0, 3, 5, 4, 0],
"Matty J": [2, 2, 0, 0, 3, 3, 0, 2, 3, 0, 0],
"Josh M": [2, 3, 2, 6, 3, 3, 3, 2, 7, 0, 2],
"Tim W": [0, 3, 3, 0, 2, 3, 4, 4, 2, 7, 4]}
io.save_json_dicts(
out_path=Path(f'{root}/Data/{year}/F1_Play.json'),
dictionary=F1_play)
subprocess.run(["python", "F1_play.py", f'{year}'])
points_files = [
'Points.png',
'Sum Points.png',
'Average Points.png']
directory_path = Path(f'{root}/Data/{year}/Figures/F1_Play')
file_paths = [Path(f'{directory_path}/{race}_F1Play_{file}') for file in points_files]
[io.display_img(file_path=path, width=1200, height=720) for path in file_paths]
[None, None, None]
Next Up¶
Next up is the British Grand Prix at Silverstone, the home of F1, the amphitheatre of speed, the OG, the original, etc. It's a normal race weekend, but will be part of the Continental prize, so get yours teams sorted and let's see who comes out on top.